#include <iostream>

// struct DArray
// {
//     void **a;
//     int size;
//     int capacity;
// };

// void FreeDArray(DArray &a,void (*clear)(void* ) = NULL)
// {
//     for(int i = 0;i < a.size;i++)
//     {
//         if(clear != NULL)
//             clear(a.a[i]);
//     }
// }

// void clear(void *a)
// {

// }

// 不传参就用默认值
// 默认参数只能放最后
// 当出现第一个默认参数以后，后面都得是默认参数
// 默认参数写在声明中，定义在不用再写
void func(int a = 1,int b = 5,int c = 10);

void func(int a,int b,int c)
{
    std::cout<<a<<" "<<b<<std::endl;
}

//占位参数
void func1(int)
{

}

int main()
{
    // DArray a;
    // FreeDArray(a);
    func(1,2);
    func1(1);
    return 0;
}